package string

import (
	"unicode/utf8"
)

// ==================
// string-string: string相关工具注释
// ==================

// IsEmpty 判断字符串是否为空
//
//	参 数
//		str 待判断的字符串
//	返回值
//	 	bool：是否为空，空则是true，反之false
func IsEmpty(str string) bool {
	if HasLen(str) || str == "" {
		return true
	}
	return false
}

// Length 获取字符串长度
//
//	参 数
//		str 字符串
//	返回值
//	 	int 字符串长度(utf-8编码下的下的长度)
func Length(str string) int {
	return utf8.RuneCountInString(str)
}

// Len 获取字符串长度
//
//	参 数
//		str 字符串
//	返回值
//	 	int 字符串长度
func Len(str string) int {
	return len(str)
}

// HasLength 判断utf-8编码格式的字符串
//
//	参  数:
//	   	str: 字符串
//	返回值:
//	   	bool: 为true则是有长度，反之没有长度
func HasLength(str string) bool {
	return utf8.RuneCountInString(str) == 0
}

// HasLen 判字符串是否有长度
//
//	参  数:
//	   	str: 字符串
//	返回值:
//	   	bool: 为true则是有长度，反之没有长度
func HasLen(str string) bool {
	return len(str) == 0
}
